1. Field of the Invention
My invention pertains to utilization of main storage in data processing systems, and particularly to avoidance of wasteful fragmentation due to allocation of excessive storage space to sequential (chained) input channeling operations of indefinite/unspecified length. One aspect of my invention pertains to a method and apparatus for operating otherwise conventional input-output channels to route data of indefinite length in successive (chained) input operations into contiguous positions in main storage with minimal interaction between the channel and control programs of the central (host CPU) system and without altering peripheral attachments.
2. Prior Art
Orderly inventorying and utilization of "scattered" (non-contiguous) areas in computer main storage is treated at length in U.S. Pat. Nos. 2,968,027 by J. A. McDonnell et al, entitled "Data Processing System Memory Controls" and 3,241,125 by R. M. Tomasulo et al, entitled "Memory Allocation".
An article by R. J. Lucas in the IBM Technical Disclosure Bulletin, Vol. 13, No. 8, Jan. 1971, page 2382, entitled "Address Chaining Mode In Channel Operations" discloses use of a "spare" bit in an IBM System/360 or 370 Channel Command Word (CCW) as a flag to set up an indirect addressing mode of channel input operation relative to scattered main storage areas of predetermined length. In this mode each data address in the CCW is used to address an entry in a table of addresses which in turn is used as an initial address of a predetermined block of reserved addresses. As the block becomes exhausted the CCW data address is decremented and used to select the next entry in the table as the initial address of another (typically non-contiguous) block and the operation of the current CCW is continued.
There is also extensive literature (publications and patents) dealing with command chaining and data chaining operations in IBM System/360 and 370 channels.
However, to my knowledge there is no capability presently for having a channel transfer plural data blocks of indefinite length into contiguous areas of (main) storage without either extensive and time-costly interaction between the channel and "central" control (or application) programs or modification of peripheral equipment. Such capability in the channel would be desirable inasmuch as it could be used economically and conveniently to reduce fragmentation of main storage due to over-allotment of storage space to such operations. My invention resides in the discovery of need for this specific capability and in the discovery of simple and inexpensive means for adapting channels to provide such capability.